home *** CD-ROM | disk | FTP | other *** search
/ Sprite 1984 - 1993 / Sprite 1984 - 1993.iso / lib / tex / inputs / fontsel / tracefnt.sty < prev   
Text File  |  1991-05-20  |  6KB  |  171 lines

  1. %% 
  2. %% This is file `tracefnt.sty' generated
  3. %% on <1990/6/30> with the docstrip utility (v1.1k). 
  4. %% 
  5. %% The original source file was `tracefnt.doc'.
  6. %% Included modules: `trace,style'.
  7. %% 
  8. %% 
  9. %% Copyright (C) 1989,1990 by Frank Mittelbach, Rainer Schoepf. 
  10. %% All rights reserved. 
  11. %% 
  12. %% IMPORTANT NOTICE: 
  13. %% 
  14. %% You are not allowed to change this file. You may however copy this file 
  15. %% to a file with a different name and then change the copy. 
  16. %% 
  17. %% You are allowed to distribute this file under the condition that it is 
  18. %% distributed together with all files mentioned in readme.mz3. If you 
  19. %% receive only some of these files from someone, complain! 
  20. %% 
  21. %% You are NOT ALLOWED to distribute this file alone. You are NOT ALLOWED 
  22. %% to take money for the distribution or use of either this file or a 
  23. %% changed version, except for a nominal charge for copying etc. 
  24. %% 
  25. %% Error Reports in case of UNCHANGED versions to 
  26. %% 
  27. %% F. Mittelbach 
  28. %% Eichenweg 29 
  29. %% D-6500 Mainz 1 
  30. %% Federal Republic of Germany 
  31. %% Bitnet: <PZF5HZ@DRUEDS2> 
  32. %% 
  33. %% or: 
  34. %% R. Sch\"opf 
  35. %% Inst. f. Theor. Physik 
  36. %% der Universit\"at Heidelberg 
  37. %% Philosophenweg 16 
  38. %% D-6900 Heidelberg 
  39. %% Federal Republic of Germany 
  40. %% Bitnet: <BK4@DHDURZ1> 
  41. %% 
  42. %% 
  43. \def\fileversion{v1.0p}
  44. \def\filedate{90/06/30}
  45. \def\docdate {90/04/05}
  46.  
  47. %% \CheckSum{288}
  48. %% \CharacterTable
  49. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  50. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  51. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  52. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  53. %%   Dollar        \$     Percent       \%     Ampersand     \&
  54. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  55. %%   Asterisk      \*     Plus          \+     Comma         \,
  56. %%   Minus         \-     Point         \.     Solidus       \/
  57. %%   Colon         \:     Semicolon     \;     Less than     \<
  58. %%   Equals        \=     Greater than  \>     Question mark \?
  59. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  60. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  61. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  62. %%   Right brace   \}     Tilde         \~}
  63. %%
  64. \@ifundefined{new@fontshape}
  65.  {\errmessage{The style option `tracefnt' does not make sense if you
  66.               do not use a format with the new font selection scheme.}
  67.   \endinput}
  68.   {}
  69.  \immediate\write\sixt@@n{Style Option: `tracefnt'
  70.  \fileversion\space <\filedate>  (FMi and RmS)}
  71. \immediate\write\sixt@@n{English Documentation
  72.  \@spaces\@spaces\space  <\docdate>  (FMi and RmS)}
  73. \immediate\write\sixt@@n{Includes module(s):
  74.  trace
  75. }
  76. \def\extract@font{%
  77.     \def\@tempa{\def\extract@fontinfo####1}%
  78.     \edef\@tempb{<\expandafter\strip@prefix\meaning\f@size>}%
  79.     \expandafter\@tempa\@tempb##2##3<##4\@nil{%
  80.       \global\expandafter\font \font@name
  81.            \ifcase0##2##3\relax\or
  82.                    ##3
  83.                     \font@warning{Font/shape
  84.                               `\f@family/\f@series/\f@shape'
  85.                               in size \@tempb\space  not available}%
  86.                     \font@warning{Using external font `##3'
  87.                                     instead}\else
  88.                   \default@errfont \errhelp\nofont@help
  89.                          \errmessage{Font \expandafter
  90.                                     \string\font@name\space
  91.                                     not found}%
  92.                \fi
  93.    \ifnum \tracingfonts >\@ne
  94.    \typeout{Loading external  ##2##3 as \font@name
  95.             \on@line}\fi
  96.               }%
  97.     \edef\font@info{\expandafter\expandafter\expandafter\string
  98.         \csname \f@family/\f@series/\f@shape \endcsname\@tempb}%
  99.     \expandafter\extract@fontinfo\font@info 3<\@nil
  100.     \csname +\f@family \expandafter
  101.        \endcsname \font@name \relax}
  102.  
  103. \def\p@selectfont{%
  104.     \xdef\font@name{%
  105.       \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  106.     \pickup@font
  107.     \font@name
  108.  \ifnum \tracingfonts>\tw@
  109.    \typeout{Switching to \font@name \on@line}\fi
  110.     \ifx \glb@currsize \lcl@currsize
  111.      \else
  112.     \setnew@baselineskip
  113.     \baselineskip\baselinestretch\baselineskip
  114.     \setbox\strutbox\hbox{\vrule\@height.7\baselineskip
  115.         \@depth.3\baselineskip \@width\z@}%
  116.     \normalbaselineskip\baselineskip
  117.      \glb@settings \the\every@size
  118.        \aftergroup\glb@settings \fi
  119.  \ifnum \tracingfonts>\tw@
  120.   \gdef\font@restore{\xdef\font@name{%
  121.     \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  122.     \typeout{Restoring \space\space\space\font@name \on@line}%
  123.     \global\let\font@restore\@empty}%
  124.    \aftergroup\font@restore
  125.  \fi
  126.     }
  127. \def\baselinestretch{1}
  128. \newtoks\every@size
  129. \every@size={}
  130. \def\use@mathgroup#1#2{\relax\ifmmode
  131.  \ifnum \tracingfonts>\tw@
  132.    \typeout{Switching to \string\mathgroup\space #2 \on@line}\fi
  133.      \math@bgroup
  134.          #1\mathgroup#2\relax
  135.      \expandafter\math@egroup\fi}%
  136. \def\getanddefine@fonts#1#2{%
  137.  \ifnum \tracingfonts>\tw@
  138.    \typeout{Setting up \string\mathgroup\space #1 as
  139.             fontshape \string#2 \f@size/\sf@size/\ssf@size
  140.             \on@line}\fi
  141.   \xdef\font@name{\csname \string#2/\f@size\endcsname}%
  142.   \pickup@font \let\textfont@name\font@name
  143.   \xdef\font@name{\csname \string#2/\sf@size\endcsname}%
  144.   \pickup@font \let\scriptfont@name\font@name
  145.   \xdef\font@name{\csname \string#2/\ssf@size\endcsname}%
  146.   \pickup@font
  147.   \edef\math@fonts{\math@fonts
  148.                \textfont#1\textfont@name
  149.                \scriptfont#1\scriptfont@name
  150.                \scriptscriptfont#1\font@name}%
  151.     }
  152. \def\tracingfonts{\font@warning{\string\tracingfonts\space
  153.                   command not provided.^^J
  154.                   Use `tracefnt' option in \string\documentstyle\space
  155.                   command.^^J Command found:}%
  156.                   \count@}
  157.    \newcount\tracingfonts
  158.  \tracingfonts=1
  159. \def\font@warning#1{%
  160.  \ifnum\tracingfonts>\z@
  161.  \errhelp{This is only a warning message but it gives you^^J%
  162.           time to think about the font substitution above.}%
  163.  \errmessage{Warning: #1}\else
  164.           \immediate\write\sixt@@n{Warning: #1 \on@line.}%
  165.  \fi
  166.           }
  167.  
  168. \endinput
  169. %% 
  170. %% End of file `tracefnt.sty'.
  171.